Pain > (Vicarious & Cognitive)

Pain > VC :: load dataset

mount_dir = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel';
con_list = dir(fullfile(mount_dir, '*/con_0001.nii'));
spm('Defaults','fMRI')
con_fldr = {con_list.folder}; fname = {con_list.name};
con_files = strcat(con_fldr,'/', fname)';
con_data_obj = fmri_data(con_files);
Using default mask: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/brainmask_canlab.nii Direct calls to spm_defauts are deprecated. Please use spm('Defaults',modality) or spm_get_defaults instead.
sampleto = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel/sub-0013/con_0001.nii'
loading mask. mapping volumes. checking that dimensions and voxel sizes of volumes are the same. Pre-allocating data array. Needed: 39535452 bytes Loading image number: 99 Elapsed time is 315.393796 seconds. Image names entered, but fullpath attribute is empty. Getting path info. Number of unique values in dataset: 9333011 Bit rate: 23.15 bits
contrast_name = {'cue_P', 'cue_V', 'cue_C', 'cue_G',...
'stim_P', 'stim_V', 'stim_C', 'stim_G',...
'motor', ...
'simple_cue_P', 'simple_cue_V', 'simple_cue_C', ...
'simple_stim_P', 'simple_stim_V', 'simple_stim_C'};

Pain > VC :: check data coverage

m = mean(con_data_obj);
m.dat = sum(~isnan(con_data_obj.dat) & con_data_obj.dat ~= 0, 2);
orthviews(m, 'trans'); % display
SPM12: spm_check_registration (v7759) 11:59:57 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions

Pain > VC :: Plot diagnostics, before l2norm

drawnow; snapnow
[wh_outlier_uncorr, wh_outlier_corr] = plot(con_data_obj);
______________________________________________________________ Outlier analysis ______________________________________________________________ global mean | global mean to var | spatial MAD | Missing values | 0 images Retained 4 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 37.37% Expected 4.95 outside 95% ellipsoid, found 7 Potential outliers based on mahalanobis distance: Bonferroni corrected: 1 images Cases 65 Uncorrected: 7 images Cases 17 26 27 61 65 75 81 Retained 10 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 45.45% Expected 4.95 outside 95% ellipsoid, found 3 Potential outliers based on mahalanobis distance: Bonferroni corrected: 0 images Cases Uncorrected: 3 images Cases 25 33 46 Mahalanobis (cov and corr, q<0.05 corrected): 1 images Outlier_count Percentage _____________ __________ global_mean 3 3.0303 global_mean_to_variance 0 0 missing_values 0 0 rmssd_dvars 0 0 spatial_variability 1 1.0101 mahal_cov_uncor 7 7.0707 mahal_cov_corrected 1 1.0101 mahal_corr_uncor 3 3.0303 mahal_corr_corrected 0 0 Overall_uncorrected 10 10.101 Overall_corrected 1 1.0101
SPM12: spm_check_registration (v7759) 12:00:55 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 (all) /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions

Pain > VC :: run robfit

set(gcf,'Visible','on');
figure ('Visible', 'on');
drawnow, snapnow;

Pain > VC :: remove outliers based on plot

con = con_data_obj;
disp(strcat("current length is ", num2str(size(con_data_obj.dat,2))));
current length is 99
%for s = 1:length(wh_outlier_corr)
%disp(strcat("-------subject", num2str(s), "------"))
con.dat = con_data_obj.dat(:,~wh_outlier_corr);
con.image_names = con_data_obj.image_names(~wh_outlier_corr,:);
con.fullpath = con_data_obj.fullpath(~wh_outlier_corr,:);
con.files_exist = con_data_obj.files_exist(~wh_outlier_corr,:);
%end
disp(strcat("after removing ", num2str(sum(wh_outlier_corr)), " participants, size is now ",num2str(size(con.dat,2))));
after removing 1 participants, size is now 98
[path,n,e] = fileparts(con_fldr(wh_outlier_corr));
disp(strcat("participants that are outliers:... ", n));
participants that are outliers:... sub-0091
disp(n);
sub-0091

Pain > VC :: plot diagnostics, after l2norm

imgs2 = con.rescale('l2norm_images');

Pain > VC :: ttest

t = ttest(imgs2);
One-sample t-test Calculating t-statistics and p-values
orthviews(t);
SPM12: spm_check_registration (v7759) 12:01:01 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
fdr_t = threshold(t, .05, 'fdr');
Image 1 FDR q < 0.050 threshold is 0.032480 Image 1 32 contig. clusters, sizes 1 to 64203 Positive effect: 56856 voxels, min p-value: 0.00000000 Negative effect: 8004 voxels, min p-value: 0.00000000
orthviews(fdr_t);
SPM12: spm_check_registration (v7759) 12:01:03 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
fdr_t = threshold(t, .001, 'fdr');
Image 1 FDR q < 0.001 threshold is 0.000433 Image 1 49 contig. clusters, sizes 1 to 41119 Positive effect: 39741 voxels, min p-value: 0.00000000 Negative effect: 3494 voxels, min p-value: 0.00000000
orthviews(fdr_t);
SPM12: spm_check_registration (v7759) 12:01:05 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
create_figure('montage'); axis off;
montage(fdr_t);
Setting up fmridisplay objects
sagittal montage: 1222 voxels displayed, 42013 not displayed on these slices
sagittal montage: 1204 voxels displayed, 42031 not displayed on these slices
sagittal montage: 1190 voxels displayed, 42045 not displayed on these slices
axial montage: 8620 voxels displayed, 34615 not displayed on these slices
axial montage: 8980 voxels displayed, 34255 not displayed on these slices
drawnow, snapnow;

Pain > VC :: Neurosynth similarity

[image_by_feature_correlations, top_feature_tables] = neurosynth_feature_labels( m, 'images_are_replicates', false, 'noverbose');
Input image 1 fullpath_was_empty _____________________________________________________________________ testr_low words_low testr_high words_high _________ _______________ __________ ________________ -0.13291 {'frequency' } 0.20129 {'counting' } -0.13081 {'images' } 0.19871 {'preparatory' } -0.10573 {'age' } 0.19543 {'autistic' } -0.10449 {'trait' } 0.18544 {'anticipatory'} -0.10042 {'time' } 0.18476 {'1back' } -0.095454 {'risk' } 0.18441 {'effort' } -0.093013 {'approach' } 0.18374 {'grammatical' } -0.090584 {'disorder' } 0.18289 {'phonology' } -0.089781 {'pair' } 0.18266 {'colour' } -0.082778 {'association'} 0.18262 {'retention' }

Pain > VC :: Pattern Phil
[obj, names] = load_image_set('pain_cog_emo');
Loaded images: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Pain.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Negative_Emotion.nii
bpls_wholebrain = get_wh_image(obj, [8 16 24]);
names_wholebrain = names([8 16 24]);
create_figure('Kragel Pain-Cog-Emo maps', 1, 3);
stats = image_similarity_plot(con_data_obj, 'average', 'mapset', bpls_wholebrain, 'networknames', names_wholebrain, 'nofigure');
Table of correlations Group:1 -------------------------------------- T-test on Fisher's r to Z transformed point-biserial correlations R_avg T P sig Pain Wholebrain -0.0531 -6.9820 0.0000 1.0000 Cog Wholebrain 0.0107 3.1150 0.0024 1.0000 Emo Wholebrain 0.0407 6.4046 0.0000 1.0000
axis image
subplot(1, 3, 2)
barplot_columns(stats.r', 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} -0.053143 0.0075957 -6.9965 3.2675e-10 -0.70318 {'Cog Wholebrain' } 0.010678 0.0034288 3.1143 0.0024178 0.313 {'Emo Wholebrain' } 0.040745 0.0063517 6.4149 5.0033e-09 0.64472
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [11.0001 12.0001 13.0001]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (r)');
title('Similarity (r) with patterns')
test_data_obj = resample_space(con_data_obj, bpls_wholebrain);
clear csim
for i = 1:3
csim(:, i) = canlab_pattern_similarity(test_data_obj.dat, bpls_wholebrain.dat(:, i), 'cosine_similarity');
end
Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297
subplot(1, 3, 3)
barplot_columns(csim, 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} -0.04833 0.0071502 -6.7592 1.0041e-09 -0.67933 {'Cog Wholebrain' } 0.011168 0.003199 3.491 0.00072304 0.35086 {'Emo Wholebrain' } 0.036032 0.00601 5.9954 3.3913e-08 0.60256
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [14.0001 15.0001 16.0001]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (cosine sim)');
title('Pattern response (cosine similarity)')

Vicarious > (Pain & Cognitive)

Vicarious > PC :: load dataset

mount_dir = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel';
con_list = dir(fullfile(mount_dir, '*/con_0002.nii'));
spm('Defaults','fMRI');
con_fldr = {con_list.folder}; fname = {con_list.name};
con_files = strcat(con_fldr,'/', fname)';
con_data_obj = fmri_data(con_files);
Using default mask: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/brainmask_canlab.nii
sampleto = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel/sub-0013/con_0002.nii'
loading mask. mapping volumes. checking that dimensions and voxel sizes of volumes are the same. Pre-allocating data array. Needed: 39535452 bytes Loading image number: 99 Elapsed time is 143.433609 seconds. Image names entered, but fullpath attribute is empty. Getting path info. Number of unique values in dataset: 9340838 Bit rate: 23.16 bits
contrast_name = {'cue_P', 'cue_V', 'cue_C', 'cue_G',...
'stim_P', 'stim_V', 'stim_C', 'stim_G',...
'motor', ...
'simple_cue_P', 'simple_cue_V', 'simple_cue_C', ...
'simple_stim_P', 'simple_stim_V', 'simple_stim_C'};

Vicarious > PC :: check data coverage

m = mean(con_data_obj);
m.dat = sum(~isnan(con_data_obj.dat) & con_data_obj.dat ~= 0, 2);
orthviews(m, 'trans') % display
SPM12: spm_check_registration (v7759) 12:07:42 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions
ans = 1×1 cell array
{1×1 region}

Vicarious > PC :: Plot diagnostics, before l2norm

drawnow; snapnow;
[wh_outlier_uncorr, wh_outlier_corr] = plot(con_data_obj);
______________________________________________________________ Outlier analysis ______________________________________________________________ global mean | global mean to var | spatial MAD | Missing values | 0 images Retained 5 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 38.38% Expected 4.95 outside 95% ellipsoid, found 8 Potential outliers based on mahalanobis distance: Bonferroni corrected: 2 images Cases 65 95 Uncorrected: 8 images Cases 22 30 61 62 65 81 95 98 Retained 10 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 53.54% Expected 4.95 outside 95% ellipsoid, found 1 Potential outliers based on mahalanobis distance: Bonferroni corrected: 0 images Cases Uncorrected: 1 images Cases 64 Mahalanobis (cov and corr, q<0.05 corrected): 2 images Outlier_count Percentage _____________ __________ global_mean 1 1.0101 global_mean_to_variance 0 0 missing_values 0 0 rmssd_dvars 0 0 spatial_variability 3 3.0303 mahal_cov_uncor 8 8.0808 mahal_cov_corrected 2 2.0202 mahal_corr_uncor 1 1.0101 mahal_corr_corrected 0 0 Overall_uncorrected 9 9.0909 Overall_corrected 3 3.0303
SPM12: spm_check_registration (v7759) 12:08:35 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 (all) /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions

Vicarious > PC :: run robfit

set(gcf,'Visible','on');
figure ('Visible', 'on');
drawnow, snapnow;

Vicarious > PC :: remove outliers based on plot

con = con_data_obj;
disp(strcat("current length is ", num2str(size(con_data_obj.dat,2))));
current length is 99
%for s = 1:length(wh_outlier_corr)
% disp(strcat("-------subject", num2str(s), "------"))
con.dat = con_data_obj.dat(:,~wh_outlier_corr);
con.image_names = con_data_obj.image_names(~wh_outlier_corr,:);
con.fullpath = con_data_obj.fullpath(~wh_outlier_corr,:);
con.files_exist = con_data_obj.files_exist(~wh_outlier_corr,:);
%end
disp(strcat("after removing ", num2str(sum(wh_outlier_corr)), " participants, size is now ",num2str(size(con.dat,2))));
after removing 3 participants, size is now 96
[path,n,e] = fileparts(con_fldr(wh_outlier_corr));
disp(strcat("participants that are outliers:... ", n));
"participants that are outliers:... su…" "participants that are outliers:... su…" "participants that are outliers:... su…"
disp(n);
{'sub-0051'} {'sub-0091'} {'sub-0129'}

Vicarious > PC :: plot diagnostics, after l2norm

imgs2 = con.rescale('l2norm_images');

Vicarious > PC :: ttest

t = ttest(imgs2);
One-sample t-test Calculating t-statistics and p-values
orthviews(t);
SPM12: spm_check_registration (v7759) 12:08:42 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
fdr_t = threshold(t, .05, 'fdr');
Image 1 FDR q < 0.050 threshold is 0.025415 Image 1 50 contig. clusters, sizes 1 to 49535 Positive effect: 4971 voxels, min p-value: 0.00000000 Negative effect: 45776 voxels, min p-value: 0.00000000
orthviews(fdr_t);
SPM12: spm_check_registration (v7759) 12:08:43 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
create_figure('montage'); axis off;
montage(fdr_t);
Setting up fmridisplay objects
sagittal montage: 1331 voxels displayed, 49416 not displayed on these slices
sagittal montage: 1418 voxels displayed, 49329 not displayed on these slices
sagittal montage: 1252 voxels displayed, 49495 not displayed on these slices
axial montage: 9709 voxels displayed, 41038 not displayed on these slices
axial montage: 10432 voxels displayed, 40315 not displayed on these slices
drawnow, snapnow;

Vicarious > PC :: Neurosynth similarity

[image_by_feature_correlations, top_feature_tables] = neurosynth_feature_labels( m, 'images_are_replicates', false, 'noverbose');
Input image 1 fullpath_was_empty _____________________________________________________________________ testr_low words_low testr_high words_high _________ _______________ __________ ________________ -0.13291 {'frequency' } 0.20129 {'counting' } -0.13081 {'images' } 0.19871 {'preparatory' } -0.10573 {'age' } 0.19543 {'autistic' } -0.10449 {'trait' } 0.18544 {'anticipatory'} -0.10042 {'time' } 0.18476 {'1back' } -0.095454 {'risk' } 0.18441 {'effort' } -0.093013 {'approach' } 0.18374 {'grammatical' } -0.090584 {'disorder' } 0.18289 {'phonology' } -0.089781 {'pair' } 0.18266 {'colour' } -0.082778 {'association'} 0.18262 {'retention' }

Vicarious > PC :: Pattern Phil
[obj, names] = load_image_set('pain_cog_emo');
Loaded images: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Pain.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Negative_Emotion.nii
bpls_wholebrain = get_wh_image(obj, [8 16 24]);
names_wholebrain = names([8 16 24]);
create_figure('Kragel Pain-Cog-Emo maps', 1, 3);
stats = image_similarity_plot(con_data_obj, 'average', 'mapset', bpls_wholebrain, 'networknames', names_wholebrain, 'nofigure');
Table of correlations Group:1 -------------------------------------- T-test on Fisher's r to Z transformed point-biserial correlations R_avg T P sig Pain Wholebrain 0.0340 4.9396 0.0000 1.0000 Cog Wholebrain -0.0123 -3.4080 0.0010 1.0000 Emo Wholebrain -0.0212 -3.5744 0.0005 1.0000
axis image
subplot(1, 3, 2)
barplot_columns(stats.r', 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} 0.033974 0.0068682 4.9465 3.1329e-06 0.49714 {'Cog Wholebrain' } -0.012276 0.0035996 -3.4104 0.00094359 -0.34275 {'Emo Wholebrain' } -0.021177 0.0059218 -3.5761 0.00054355 -0.35942
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [11.0002 12.0002 13.0002]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (r)');
title('Similarity (r) with patterns')
test_data_obj = resample_space(con_data_obj, bpls_wholebrain);
clear csim
for i = 1:3
csim(:, i) = canlab_pattern_similarity(test_data_obj.dat, bpls_wholebrain.dat(:, i), 'cosine_similarity');
end
Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297
subplot(1, 3, 3)
barplot_columns(csim, 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} 0.032472 0.0066174 4.9071 3.6826e-06 0.49318 {'Cog Wholebrain' } -0.0128 0.0034669 -3.692 0.00036592 -0.37106 {'Emo Wholebrain' } -0.019336 0.0058073 -3.3296 0.0012267 -0.33463
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [14.0002 15.0002 16.0002]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (cosine sim)');
title('Pattern response (cosine similarity)')

Cognitive > (Pain & Vicarious)

Cognitive > PV :: load dataset

mount_dir = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel';
con_list = dir(fullfile(mount_dir, '*/con_0003.nii'));
spm('Defaults','fMRI');
con_fldr = {con_list.folder}; fname = {con_list.name};
con_files = strcat(con_fldr,'/', fname)';
con_data_obj = fmri_data(con_files);
Using default mask: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/brainmask_canlab.nii
sampleto = '/Volumes/spacetop_projects_cue/analysis/fmri/spm/univariate/model01_CESO/1stLevel/sub-0013/con_0003.nii'
loading mask. mapping volumes. checking that dimensions and voxel sizes of volumes are the same. Pre-allocating data array. Needed: 39535452 bytes Loading image number: 99 Elapsed time is 113.446299 seconds. Image names entered, but fullpath attribute is empty. Getting path info. Number of unique values in dataset: 9338749 Bit rate: 23.15 bits
contrast_name = {'cue_P', 'cue_V', 'cue_C', 'cue_G',...
'stim_P', 'stim_V', 'stim_C', 'stim_G',...
'motor', ...
'simple_cue_P', 'simple_cue_V', 'simple_cue_C', ...
'simple_stim_P', 'simple_stim_V', 'simple_stim_C'};

Cognitive > PV :: check data coverage

m = mean(con_data_obj);
m.dat = sum(~isnan(con_data_obj.dat) & con_data_obj.dat ~= 0, 2);
orthviews(m, 'trans'); % display
SPM12: spm_check_registration (v7759) 12:13:20 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions

Cognitive > PV :: Plot diagnostics, before l2norm

drawnow; snapnow;
[wh_outlier_uncorr, wh_outlier_corr] = plot(con_data_obj);
______________________________________________________________ Outlier analysis ______________________________________________________________ global mean | global mean to var | spatial MAD | Missing values | 0 images Retained 4 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 36.36% Expected 4.95 outside 95% ellipsoid, found 8 Potential outliers based on mahalanobis distance: Bonferroni corrected: 3 images Cases 17 61 65 Uncorrected: 8 images Cases 1 17 19 30 61 65 75 95 Retained 11 components for mahalanobis distance Expected 50% of points within 50% normal ellipsoid, found 46.46% Expected 4.95 outside 95% ellipsoid, found 2 Potential outliers based on mahalanobis distance: Bonferroni corrected: 0 images Cases Uncorrected: 2 images Cases 46 56 Mahalanobis (cov and corr, q<0.05 corrected): 3 images Outlier_count Percentage _____________ __________ global_mean 2 2.0202 global_mean_to_variance 1 1.0101 missing_values 0 0 rmssd_dvars 0 0 spatial_variability 3 3.0303 mahal_cov_uncor 8 8.0808 mahal_cov_corrected 3 3.0303 mahal_corr_uncor 2 2.0202 mahal_corr_corrected 0 0 Overall_uncorrected 10 10.101 Overall_corrected 4 4.0404
SPM12: spm_check_registration (v7759) 12:14:15 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 (all) /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1 /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions
Grouping contiguous voxels: 1 regions

Cognitive > PV :: run robfit

set(gcf,'Visible','on');
figure ('Visible', 'on');
drawnow, snapnow;

Cognitive > PV :: remove outliers based on plot

con = con_data_obj;
disp(strcat("current length is ", num2str(size(con_data_obj.dat,2))));
current length is 99
%for s = 1:length(wh_outlier_corr)
% disp(strcat("-------subject", num2str(s), "------"))
con.dat = con_data_obj.dat(:,~wh_outlier_corr);
con.image_names = con_data_obj.image_names(~wh_outlier_corr,:);
con.fullpath = con_data_obj.fullpath(~wh_outlier_corr,:);
con.files_exist = con_data_obj.files_exist(~wh_outlier_corr,:);
%end
disp(strcat("after removing ", num2str(sum(wh_outlier_corr)), " participants, size is now ",num2str(size(con.dat,2))));
after removing 4 participants, size is now 95
[path,n,e] = fileparts(con_fldr(wh_outlier_corr));
disp(strcat("participants that are outliers:... ", n));
"participants that are outl…" "participants that are outl…" "participants that are outl…" "participants that are outl…"
disp(n);
{'sub-0032'} {'sub-0087'} {'sub-0091'} {'sub-0129'}

Cognitive > PV:: plot diagnostics, after l2norm

imgs2 = con.rescale('l2norm_images');

Cognitive > PV :: ttest

t = ttest(imgs2);
One-sample t-test Calculating t-statistics and p-values
orthviews(t);
SPM12: spm_check_registration (v7759) 12:14:21 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
fdr_t = threshold(t, .05, 'fdr');
Image 1 FDR q < 0.050 threshold is 0.024397 Image 1 63 contig. clusters, sizes 1 to 46162 Positive effect: 7454 voxels, min p-value: 0.00000000 Negative effect: 41275 voxels, min p-value: 0.00000000
orthviews(fdr_t);
SPM12: spm_check_registration (v7759) 12:14:23 - 10/01/2023 ======================================================================== Display /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/canlab_canonical_brains/Canonical_brains_surfaces/keuken_2014_enhanced_for_underlay.img,1
drawnow, snapnow;
create_figure('montage'); axis off;
montage(fdr_t);
Setting up fmridisplay objects
sagittal montage: 1284 voxels displayed, 47445 not displayed on these slices
sagittal montage: 1230 voxels displayed, 47499 not displayed on these slices
sagittal montage: 1285 voxels displayed, 47444 not displayed on these slices
axial montage: 9528 voxels displayed, 39201 not displayed on these slices
axial montage: 10133 voxels displayed, 38596 not displayed on these slices
drawnow, snapnow;

Cognitive > PV :: Neurosynth similarity

[image_by_feature_correlations, top_feature_tables] = neurosynth_feature_labels( m, 'images_are_replicates', false, 'noverbose');
Input image 1 fullpath_was_empty _____________________________________________________________________ testr_low words_low testr_high words_high _________ _______________ __________ ________________ -0.13291 {'frequency' } 0.20129 {'counting' } -0.13081 {'images' } 0.19871 {'preparatory' } -0.10573 {'age' } 0.19543 {'autistic' } -0.10449 {'trait' } 0.18544 {'anticipatory'} -0.10042 {'time' } 0.18476 {'1back' } -0.095454 {'risk' } 0.18441 {'effort' } -0.093013 {'approach' } 0.18374 {'grammatical' } -0.090584 {'disorder' } 0.18289 {'phonology' } -0.089781 {'pair' } 0.18266 {'colour' } -0.082778 {'association'} 0.18262 {'retention' }

Cognitive > PV :: Pattern Phil
[obj, names] = load_image_set('pain_cog_emo');
Loaded images: /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Pain.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Pain.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Cognitive_Control.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Cognitive_Control.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_aMCC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_pACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_sgACC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_vmPFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_dMFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/CanlabCore/CanlabCore/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_MFC_Negative_Emotion.nii /Users/h/Documents/MATLAB/Neuroimaging_Pattern_Masks/Multivariate_signature_patterns/2018_Kragel_MFC_Generalizability/bPLS_Wholebrain_Negative_Emotion.nii
bpls_wholebrain = get_wh_image(obj, [8 16 24]);
names_wholebrain = names([8 16 24]);
create_figure('Kragel Pain-Cog-Emo maps', 1, 3);
stats = image_similarity_plot(con_data_obj, 'average', 'mapset', bpls_wholebrain, 'networknames', names_wholebrain, 'nofigure');
Table of correlations Group:1 -------------------------------------- T-test on Fisher's r to Z transformed point-biserial correlations R_avg T P sig Pain Wholebrain -0.0442 -13.0090 0.0000 1.0000 Cog Wholebrain 0.0005 0.1744 0.8619 0.0000 Emo Wholebrain 0.0414 11.9877 0.0000 1.0000
axis image
subplot(1, 3, 2)
barplot_columns(stats.r', 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} -0.044179 0.0033908 -13.029 2.2204e-15 -1.3095 {'Cog Wholebrain' } 0.00047053 0.0026949 0.1746 0.86175 0.017548 {'Emo Wholebrain' } 0.041386 0.0034489 12 2.2204e-15 1.206
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [15.0055 16.0055 17.0055]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (r)');
title('Similarity (r) with patterns')
test_data_obj = resample_space(con_data_obj, bpls_wholebrain);
clear csim
for i = 1:3
csim(:, i) = canlab_pattern_similarity(test_data_obj.dat, bpls_wholebrain.dat(:, i), 'cosine_similarity');
end
Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 Warning: Some images have zero values in some of the 415356 voxels in weight mask. These will be excluded from similarity analysis image-wise. Number of zero or NaN values within weight mask, by input image: 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297 297
subplot(1, 3, 3)
barplot_columns(csim, 'nofigure', 'colors', {[1 .9 0] [.2 .2 1] [1 .2 .2]}, 'names', names_wholebrain)
Col 1: Pain Wholebrain Col 2: Cog Wholebrain Col 3: Emo Wholebrain --------------------------------------------- Tests of column means against zero --------------------------------------------- Name Mean_Value Std_Error T P Cohens_d ___________________ __________ _________ _______ __________ ________ {'Pain Wholebrain'} -0.043382 0.0033672 -12.883 2.2204e-15 -1.2948 {'Cog Wholebrain' } 0.0024441 0.0025989 0.94044 0.3493 0.094518 {'Emo Wholebrain' } 0.039317 0.0034077 11.538 2.2204e-15 1.1596
ans = struct with fields:
fig_han: [1×1 struct] axis_han: [1×1 Axes] bar_han1: [1×1 Bar] bar_han: {[1×1 Bar] [1×1 Bar] [1×1 Bar]} errorbar_han: {[1×1 ErrorBar] [1×1 ErrorBar] [1×1 ErrorBar]} point_han1: {99×3 cell} text_han: {99×3 cell} point_han: {99×3 cell} star_handles: [18.0055 19.0055 20.0055]
set(gca, 'FontSize', 14)
ylabel('Pattern similarity (cosine sim)');
title('Pattern response (cosine similarity)')
drawnow, snapnow;
% save html
pubdir = pwd;
pubfilename = 's03_PVC_stim_contrasts_ROI.mlx';
p = struct('useNewFigure', false, 'maxHeight', 800, 'maxWidth', 800, ...
'format', 'html', 'outputDir', pubdir, ...
'showCode', true, 'stylesheet', which('mxdom2simplehtml_CANlab.xsl'));
htmlfile = publish(pubfilename, p);
Error using evalmxdom>instrumentAndRun (line 116)
Publishing a script that contains a publish function is not supported.

Error in evalmxdom (line 21)
[data,text,laste] = instrumentAndRun(file,cellBoundaries,imageDir,imagePrefix,options);

Error in publish